import axios from "axios"
import {METHOD} from "./config"
// loading组件
import {Loading} from "element-ui";
var loadingShow =null;

//创建一个axios实例
const init = axios.create({
    // 公共路径将自动添加到url的前面，除非`url`是绝对的URL
    baseURL:"https://api.it120.cc/small4",
    // 超出时间
    timeout:5000,
     // headers: {'X-Custom-Header': 'foobar'} //设置请求头
})
//  添加请求拦截器
init .interceptors.request.use(function(config){
// 在发送请求前应该做些准备
// 弹起loading组件
// 拦截请求config配置   动态添加或删除配置
loadingShow=Loading.service;
return config;
},function(error){
 // 对请求错误做些什么
  // 提示用户请求发送失败的原因
  return Promise.reject(error);
});
// 添加响应拦截器
init.interceptors.response.use(function (response) {
    // 对响应数据做点什么（服务器已响应请求并返回）
    // 对自身服务器响应的状态码进行处理
    setTimeout(function () {
    //   loadingShow.close();
    }, 5000)
    return response;
  }, function (error) {
    // 对响应错误做点什么
    // 网络问题、服务器的问题
    return Promise.reject(error);
  });
// 




//封装请求
export function request(method,url,params){ 
        switch(method){
            case METHOD.GET: 
                return GET(url,params)
            case METHOD.POST:
                return POST(url,params)    
        }
}


function GET(url,params){
        return init.get(url,params)
}

function POST(url,params){
    return init.post(url,params)
}